5 // mouse x controls discrete pitch in dorian mode
7 scale = FloatArray[0, 2, 3.2, 5, 7, 9, 10]; // dorian scale
8 buffer = Buffer.alloc(s, scale.size,1, {|b| b.setnMsg(0, scale) });
17 MouseX.kr(0,15), // mouse indexes into scale
18 12, // 12 notes per octave
20 72 // offset by 72 notes
22 + LFNoise1.kr([3,3], 0.04) // add some low freq stereo detuning
23 ).midicps, // convert midi notes to hertz
28 + RLPF.ar(LFPulse.ar([48,55].midicps, 0.15),
29 SinOsc.kr(0.1, 0, 10, 72).midicps, 0.1, 0.1);
31 // add some 70's euro-space-rock echo
32 CombN.ar(mix, 0.31, 0.31, 2, 1, mix)